// 2025.05.21 16:38:38 星期三 晴 好不开心...

import {
  ObjectOnlyPushSet,
  removeObjectOnlyPushSet,
} from '../../Func/uniFunc/Func';
import { spacename_win_load } from '../DataDefine/sourceData';
import { win_load_prop_space_Arr } from './cla_win_load';

// 这个是 集中 的 win 下的 写 读 新创建浮动元素 函数 集
const uni_loadTag = 'uni_load';

class uni_load {
  get [Symbol.toStringTag]() {
    return uni_loadTag;
  }

  constructor(spacename) {
    this.spacename = spacename;
  }

  /**
   * 域名
   */
  spacename;

  data = [];

  /**
   * 添加 信息
   * @param {string} key
   * @param {*} val
   */
  set_winload_key_val(key, val) {
    // console.log(key, val);
    if (!ObjectOnlyPushSet(this, key, val)) {
      this[key] = val;
    }
    sessionStorage.setItem(key, val);
  }

  /**
   * 获取 信息
   * @param {string} key
   */
  get_winload_key(key) {
    // console.log(key);

    return sessionStorage.getItem(key);
  }

  destroy() {
    removeObjectOnlyPushSet(
      window[spacename_win_load],
      this.spacename,
      true,
      win_load_prop_space_Arr
    );
  }
}

export { uni_load };
